#!/bin/bash

# 修复图片格式问题的脚本

IMAGE_DIR="/Users/wangqi/Documents/code/privateorder/pan/halo/application/src/main/resources/themes/alibaba-b2b-theme/assets/images"

echo "🔧 开始修复图片格式问题..."

# 遍历所有图片文件
for file in "$IMAGE_DIR"/*.jpg "$IMAGE_DIR"/*.png "$IMAGE_DIR"/*.ico; do
    if [ -f "$file" ]; then
        filename=$(basename "$file")
        echo "📸 处理文件: $filename"
        
        # 读取文件内容
        content=$(cat "$file")
        
        # 提取Base64数据
        if [[ $content == *"\"data\":\""* ]]; then
            # 使用Python来解析JSON并解码Base64
            python3 -c "
import json
import base64
import sys

try:
    # 读取文件内容
    with open('$file', 'r') as f:
        content = f.read().strip()
    
    # 解析JSON
    data = json.loads(content)
    base64_data = data['source']['data']
    media_type = data['source']['media_type']
    
    # 移除Base64前缀（如果有的话）
    if base64_data.startswith('data:'):
        base64_data = base64_data.split(',')[1]
    
    # 解码Base64数据
    binary_data = base64.b64decode(base64_data)
    
    # 写入二进制文件
    with open('$file', 'wb') as f:
        f.write(binary_data)
    
    print('  ✅ 成功修复: $filename')
except Exception as e:
    print('  ❌ 修复失败: $filename - {str(e)}')
"
        else
            echo "  ⚠️  跳过非JSON格式文件: $filename"
        fi
    fi
done

echo ""
echo "🎉 图片修复完成！"
echo "📋 修复后的文件列表:"
ls -la "$IMAGE_DIR"/*.jpg "$IMAGE_DIR"/*.png "$IMAGE_DIR"/*.ico 2>/dev/null | head -10